package util.exact;

import bean.State;

import java.util.Iterator;

public class IsSameState {

    /**
     * 此方法用来判断两个state是否相同
     * 注意！！！相同是指技能集是否相同，不考虑其他属性，只要技能集相同就认为是相同的state
     * @param state1 此参数可以放stateOfStates
     * @param state2 此参数可以放stateOfWorker
     * @return 如果两个state的技能集中技能完全一致，则返回true
     */
    public static boolean isSameState(State state1, State state2) {
        if ( state1.getSkills().size() != state2.getSkills().size() ) {
            return false;
        }
        boolean flag = true;
        Iterator<String> iterator1 = state1.getSkills().iterator();
        while ( iterator1.hasNext() ) {
            Iterator<String> iterator2 = state2.getSkills().iterator();
            while ( iterator2.hasNext() ) {
                if ( iterator1.next() != iterator2.next() ) {
                    flag = false;
                }
            }
        }
        return flag;
    }

}
